Memory consumption of each accept() call on server running on Windows 2008 [migrated]
        Posted  
        
            by 
                Atul
            
        on Server Fault
        
        See other posts from Server Fault
        
            or by Atul
        
        
        
        Published on 2012-12-18T02:23:59Z
        Indexed on 
            2012/12/18
            5:04 UTC
        
        
        Read the original article
        Hit count: 473
        
I've written a simple and small server application on Windows 2008 that just accepts connections and does nothing else. I am doing memory footprint assessment of socket calls, What I found that each connection (after accept()) consumes at least 2.5 KB of memory. Interestingly, the memory is not consumed by the process that has accept() call but it consumed by a OS process. I believe it might be because of data structures being created inside OS for each connection.
Now, I have two key questions:
Is it possible by any means to reduce this memory footprint (by changing any parameters, configuration etc) ? If yes how ? (Because 2K for each connection would be too much if we planning server to accept millions of connections)
If my server is intended to accept million connections, is it good idea to use Windows 2008 ? or shall I switch to some other OS?
Please advice me.
© Server Fault or respective owner